# @Time    :2025/3/30 19:36
"""
特殊方法应用
题目：定义一个 Point 类，包含 x 和 y 实例属性。
实现 __init__ 方法初始化坐标，
__str__ 方法以 (x, y) 格式输出坐标，__add__ 方法实现两个 Point 对象相加，
返回一个新的 Point 对象，其坐标为对应坐标之和。
"""


class Point:
    def __init__(self, x, y):
        self.x = x
        self.y = y

    def __str__(self):
        return f"({self.x},{self.y})"

    def __add__(self, other):
        new_x = self.x + other.x
        new_y = self.y + other.y

        return Point(new_x, new_y)


p1 = Point(1, 2)
p2 = Point(3, 4)
news_point = p1 + p2
print(p1)
print(p2)
print(news_point)
